iT邦幫忙

2025 iThome 鐵人賽

0
生成式 AI

生成式 AI 從入門到實作:用 ChatGPT 打造你的第一個 AI 幫手系列 第 9

Day 9:Java OOP 輔助學習:class、物件、constructor

  • 分享至 

  • xImage
  •  

在學 Java 的過程中,最常讓人卡住的關鍵字之一,就是 OOP(物件導向程式設計)。
「class到底是什麼?」、「物件又是什麼?」、「為什麼要用 constructor?」
別擔心,今天就讓我們用ChatGPT當Java家教,用最白話的方式把這些觀念講清楚!

#OOP是什麼?
OOP,全名Object-Oriented Programming
是一種讓程式更好維護、更像「現實世界」思考方式的程式設計方法

想像一下:
你要設計一個「學生系統」
每個學生都有「名字、學號、分數」
他們可以「讀書()、考試()、顯示成績()」

##class(類別)是什麼?
class 是物件的藍圖
就像「學生」這個概念,不是某一個人,而是一個模型。

    String name;
    int score;

    // constructor 建構子
    public Student(String n, int s) {
        name = n;
        score = s;
    }

    // 方法
    void showInfo() {
        System.out.println(name + " 的分數是 " + score);
    }
}

這段程式就建立了一個「學生」的藍圖
但它還不是一個真正的學生,還需要用「物件」來生成!

###物件(Object)是什麼?
物件就是用 class 建出來的實例
簡單說,有了「藍圖」,我們就能「造房子」

    public static void main(String[] args) {
        Student s1 = new Student("小明", 90);
        Student s2 = new Student("小美", 85);

        s1.showInfo();
        s2.showInfo();
    }
}

Student s1 = new Student("小明", 90);
這行程式的意思是:「依照 Student 這個藍圖,建立一個小明的學生物件」
constructor(建構子)是什麼?
建構子是「幫你初始化物件」的特別方法。
它在你用 new 建立物件時自動被呼叫。
可以把它想成:「每當誕生一個新學生,constructor 會幫他填上名字與分數」

    name = n;
    score = s;
}
你也可以定義多個建構子,讓使用更靈活:
public Student(String n) {
    name = n;
    score = 0; // 預設值
}

用 ChatGPT 輔助學習
當你看不懂教材時,可以請 ChatGPT 幫你用生活例子講解。
Prompt 範例:
「請用生活化例子解釋 Java 的 class、object、constructor,並寫出一個完整的可執行範例。」
進階 Prompt:
「幫我改進這個 Java 類別,增加方法 calculateGrade(),根據分數回傳等級 A~F。」
ChatGPT 不只會產生程式碼,還能幫你解釋每一行用途、找出錯誤,甚至幫你轉成更清楚的架構!


上一篇
Day 8:Excel + ChatGPT 自動生成公式與函數解釋
下一篇
Day 10:Java 小專案 1:猜數字遊戲 — AI 幫你寫程式,你只要懂就好
系列文
生成式 AI 從入門到實作:用 ChatGPT 打造你的第一個 AI 幫手30
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言